package com.wj.factory;

import com.wj.factory.humanImpl.BlackHuMan;
import com.wj.factory.humanImpl.WhiteHuMan;
import com.wj.factory.humanImpl.YellowHuMan;

/**
 * @author WangJin
 * @version 1.0
 * @date 2022/2/11 16:50
 */
public class NvWa {
    public static void main(String[] args) {

        //女娲第一次造人，试验性质，少造点，火候不足，缺陷产品
        System.out.println("------------造出的第一批人是这样的：白人 -----------------");
                Human whiteHuman = HuManFactory.createHuman(WhiteHuMan.class);
                whiteHuman.cry();
                whiteHuman.laugh();
                whiteHuman.talk();

        //女娲第二次造人，火候加足点，然后又出了个次品，黑人
        System.out.println("\n\n------------造出的第二批人是这样的：黑人 -----------------");
                Human blackHuman = HuManFactory.createHuman(BlackHuMan.class);
                blackHuman.cry();
                blackHuman.laugh();
                blackHuman.talk();

        //第三批人了，这次火候掌握的正好，黄色人类（不写黄人，免得引起歧义），备注：RB人不属于此列
        System.out.println("\n\n------------造出的第三批人是这样的：黄色人类 -----------------");
                Human yellowHuman = HuManFactory.createHuman(YellowHuMan.class);
                yellowHuman.cry();
                yellowHuman.laugh();
                yellowHuman.talk();

        System.out.println("\n\n------------new一个黄色人类第一批人是这样的：黄色人类 -----------------");
                YellowHuMan yellowHuMan1 = new YellowHuMan();
                yellowHuMan1.laugh();
                yellowHuMan1.cry();
                yellowHuMan1.talk();

        for(int i=0;i<1000;i++){
            System.out.println("\n\n------------随机产生人类了-----------------" + i);
            Human human = HuManFactory.createHuman();
            human.cry();
            human.laugh();
            human.talk();
        }

    }

}
